/*
 * @Author: your name
 * @Date: 2020-04-26 11:49:44
 * @LastEditTime: 2020-08-25 10:24:05
 * @LastEditors: Please set LastEditors
 * @Description: In User Settings Edit
 * @FilePath: \sanitation-web\src\utils\validate.js
 */
/**
 * 邮箱
 * @param {*} s
 */
export function isEmail (s) {
  return /^([a-zA-Z0-9._-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)
}

/**
 * 身份证
 */
export function isIdCode (s) {
  return /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(s)
}

/**
 * 手机号码
 * @param {*} s
 */
export function isMobile (s) {
  return /^(0|86|17951)?(1[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])[0-9]{9}$/.test(s)
}

/**
 * ip地址
 * @param {*} s
 */
export function isIp (s) {
  return /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(s)
}

/**
 * 电话号码
 * @param {*} s
 */
export function isPhone (s) {
  return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)
}

/**
 * URL地址
 * @param {*} s
 */
export function isURL (s) {
  return /^http[s]?:\/\/.*/.test(s)
}

/**
 * 正数正则
 * @param {*} s
 */
export function isNumber (s) {
  return /^\d+$|^\d+\.?\d+$/.test(s)
}

/**
 * 正整数
 */
export function isPositiveInteger (s) {
  return /^[0-9]\d*$/.test(s)
}

/**
 * 百分率正则
 * @param {*} s
 */
export function isPercentage (s) {
  return /^(100|[1-9]?\d(\.\d\d?\d?)?)%$|0$/.test(s)
}

/**
 * 车牌号正则
 * @param {*} s
 */
export function isPlateNumber (s) {
  return /^(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z](([0-9]{5}[ABCDEFGHJK])|([ABCDEFGHJK]([A-HJ-NP-Z0-9])[0-9]{4})))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳使领]))$/.test(s)
}
// export function isPlateNumber(s) {
//   return /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/.test(s)
// }
// let res = /^(([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z](([0-9]{5}[DF])|([DF]([A-HJ-NP-Z0-9])[0-9]{4})))|([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳使领]))$/
/**
 * 金额正则
 * @param {*} s
 */
export function isMoney (s) {
  return /^([0-9]|[1-9]\d+)(\.\d{1,2})?$/.test(s)
}
